iT邦幫忙

2022 iThome 鐵人賽

DAY 17
0
Software Development

C語言與C++語言系列 第 17

C語言與C++語言第十七天多維陣列

  • 分享至 

  • xImage
  •  

C++多維陣列

具有兩個維度(索引)的陣列常用來表示數值表格table of vaules,其值以列rows和行columns的方式排列,存取表格中特定元素時,需要用到兩個索引,依慣例,第一個索引代表元素的列號,第二個代表行號,需索引存取元素的陣列稱為二維陣列two dimensional arrays,又稱2D陣列2-D arrays,具有兩個維度以上的陣列稱為多為陣列multidimensional arrays,下程式碼

#include <iostream>
#include <array>
using namespace std;
const size_t rows=2;
const size_t columns=3;
void printArray(const array<array<int, columns>, rows>&);

int main()
{
    array<array<int, columns>, rows>array1={1,2,3,4,5,6};
    array<array<int, columns>, rows>array2={1,2,3,4,5};

    cout<<"Vaules in array1 by row are: "<<endl;
    printArray(array1);

    cout<<"\nVaules in array2 by row are: "<<endl;
    printArray(array2);
}

void printArray(const array<array<int, columns>, rows> &a)
{
    for(auto const &row:a)
    {
        for(auto const &element:row)
        cout<<element<<' ';

        cout<<endl;
    }
}

上面的程式碼中我們的標頭檔有兩個一個基本iostram輸入輸出和array陣列要用的,const size_t rows=2我們的行是固定的2因為const,列就是3也是固定,然後我們再設一個函示printArray讓他只能做一次因為void,main函示裡面先宣告兩個二維數列一個array1={1,2,3,4,5,6}和array2={1,2,3,4,5},配合void printArray函示裡面的兩個for迴圈,最後就可將就果印出來

C語言判斷質數

#include <stdio.h>
int main()
{
    int N;
    printf("N= ");
    scanf("%d\n", &N);

    int numberOfDivisors=0;
    int number;
    for(number=2;number<=N;number++)
    {
        if(N%number==0)
        {
            ++numberOfDivisors;
        }
    }
    if(numberOfDivisors==0)
    {
        printf("Yes\n");   
    }else
    {
        printf("No\n");
    }
    return 0;
}

上面的程式碼就是判斷質數的方法,for迴圈配合if過濾判斷是否為質數並將他印出如果numberOfDivisors==0就是質數,其他就不是質數最後將結果印出來就好了


上一篇
C語言與C++語言第十六天
下一篇
C語言與C++語言第十八天
系列文
C語言與C++語言30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言